package com.ctshk.rpc.order.tour.req;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.time.LocalDate;
import java.util.List;

@Data
@ApiModel(value="系列团订单添人Req", description="系列团订单添人Req")
public class SeriesOrderTouristInfoAddReq implements Serializable {

    @ApiModelProperty(value = "所属订单")
    private Long orderId;

    @ApiModelProperty(value = "用户Id")
    private Long userId;

    @NotNull(message = "游客类型主数据ID不能为空")
    @ApiModelProperty(value = "游客类型主数据ID",required = true)
    private Long mainDataId;

    @NotNull(message = "游客类型不能为空")
    @ApiModelProperty(value = "旅客类型",required = true)
    private String touristTypeName;

    @ApiModelProperty(value = "人数")
    private Integer people;

    @ApiModelProperty(value = "团期ID")
    private Long scheduleId;

    @ApiModelProperty(value = "中文姓")
    private String cnSurname;

    @ApiModelProperty(value = "中文姓名")
    private String cnName;

    @ApiModelProperty(value = "英文姓")
    private String enSurname;

    @ApiModelProperty(value = "英文名称")
    private String enName;

    @NotNull(message = "性别不能为空")
    @ApiModelProperty(value = "性别",required = true)
    private Integer gender;

    @NotNull(message = "国籍不能为空")
    @ApiModelProperty(value = "国籍",required = true)
    private String nation;

    @NotNull(message = "国籍Id不能为空")
    @ApiModelProperty(value = "国籍Id",required = true)
    private Long nationId;

    @NotNull(message = "电话区号不能为空")
    @ApiModelProperty(value = "电话区号",required = true)
    private String mobileAreaCode;

    @NotNull(message = "联系方式不能为空")
    @ApiModelProperty(value = "联系方式",required = true)
    private String mobile;

    @ApiModelProperty(value = "邮箱")
    private String email;

    @ApiModelProperty(value = "备注")
    private String remark;

    @NotNull(message = "证件项不能为空")
    @ApiModelProperty(value = "证件项",required = true)
    List<SeriesOrderTouristInfoAddCertificateReq> certificateList;

    @ApiModelProperty(value = "紧急联系人姓名")
    private String emergencyContactName;

    @ApiModelProperty(value = "紧急联系人电话区号")
    private String emergencyMobileAreaCode;

    @ApiModelProperty(value = "紧急联系人电话")
    private String emergencyMobile;

    @ApiModelProperty(value = "出生日期")
    private LocalDate birthday;

    @ApiModelProperty(value = "是否应用全部（0否 1是）")
    private Integer isApplyAll;

}
